﻿#include<iostream>
#include"Role.h"

void test(Role* p) {
	p->SetHp(5000);
}

int main() {
	const Role user;
	user.lv = 2;//报错，不能改变，因为对象是const属性

	Role monster;
	const Role* puser{ &monster };
	puser->damage = 2;//报错，不能改变，因为指针是const属性

	puser->GetHp();
	monster.GetHp();

	monster.SetLv(200);

	user.GetDamage();//const对象无法调用非const函数
	test((Role*)(&user));//C语言形式，传入const对象
	test(const_cast<Role*>(&user));//C++形式，传入const对象
}